A High Performance Runtime System for Parallel Evaluation of Lazy Languages
نویسندگان
چکیده
is a system for parallel evaluation of lazy functional programs implemented on a Sequent Symmetry. The distinguishing features of over previous implementations are propagation of Normal Form demand and memory reclamation via reference counting. In an earlier paper, the validity of these ideas was established based on a preliminary implementation. Our experience, based on extensive experimentation with this implementation, led to the design and implementation of a new high-performance runtime system for described in this paper. We discuss the rationale behind the various design choices and provide quantitative evidence for the validity of these choices.
منابع مشابه
Parallel Transaction Processing in Functional Languages Towards Practical Functional Databases
This paper shows how functional languages can be adapted for transaction processing, and discusses the implementation of a parallel runtime system for such functional transaction processing languages. We extend functional languages with current state variables and result state variables to allow the definition of transactions that can update, create and delete bindings in a state. Our runtime s...
متن کاملImproving Parallel Implementations of Lazy Functional Languages Using Evaluation Transformers
This report outlines a parallel abstract machine for the implementation of a lazy functional core language. The evaluation transformer model of reduction [1] is used to control the evaluation process. An evaluator space containing parameterised evaluators for structured and polymorphic types is introduced. Using this framework it is possible to handle runtime information about evaluators for ar...
متن کاملTrace-based just-in-time compilation for lazy functional programming languages
This thesis investigates the viability of trace-based just-in-time (JIT) compilation for optimising programs written in the lazy functional programming language Haskell. A trace-based JIT compiler optimises only execution paths through the program, which is in contrast to method-based compilers that optimise complete functions at a time. The potential advantages of this approach are shorter com...
متن کاملTowards an Operational Semantics for a Parallel Non-Strict Functional Language
Parallel programs must describe both computation and coordination , i.e. what to compute and how to organize the computation. In functional languages equational reasoning is often used to reason about computation. In contrast, there have been many diierent coordination constructs for functional languages, and far less work on reasoning about coordination. We present an initial semantics for GpH...
متن کاملFrom (Sequential) Haskell to (Parallel) Eden: An Implementation Point of View
The explicitly parallel programming language Eden adds a coordination level to the lazy functional language Haskell. This paper describes how a compiler and runtime system for Eden can incrementally be built on the basis of a compiler and runtime system for the computation language. The modiications needed in the compiler are restricted to speciic orthogonal extensions. We show that Eden's desi...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1994